ps_4_1
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb1[16], immediateIndexed
dcl_constantbuffer cb2[16], immediateIndexed
dcl_constantbuffer cb12[18], immediateIndexed
dcl_sampler s2, mode_default
dcl_resource_texture2d (float,float,float,float) t2
dcl_resource_texture2dms(0) (float,float,float,float) t7
dcl_resource_texture2dms(0) (float,float,float,float) t8
dcl_resource_texture2dms(0) (float,float,float,float) t9
dcl_resource_texture2dms(0) (uint,uint,uint,uint) t11
dcl_resource_texture2dms(0) (float,float,float,float) t12
dcl_input_ps linear sample v1.xyw
dcl_input_ps linear v2.xyzw
dcl_input_ps_sgv v3.x, sampleIndex
dcl_output o0.xyzw
dcl_temps 7
div r0.xy, v1.xyxx, v1.wwww
mul r0.xy, r0.xyxx, cb2[15].xyxx
ftoi r0.xy, r0.xyxx
mov r0.zw, l(0,0,0,0)
ldms r1.x, r0.xyww, t12.xyzw, v3.x
add r1.x, -r1.x, cb12[17].w
add r1.x, r1.x, l(1.000000e+000)
div r1.x, cb12[17].z, r1.x
div r1.yzw, v2.xxyz, v2.wwww
mad r2.xyz, r1.yzwy, r1.xxxx, cb1[15].xyzx
add r3.xyz, -r2.xyzx, cb12[0].xyzx
dp3 r1.x, r3.xyzx, r3.xyzx
rsq r3.w, r1.x
mul r4.xyz, r3.wwww, r3.xyzx
mad_sat r1.x, -r1.x, cb12[4].z, l(1.000000e+000)
add r4.w, -cb12[7].x, l(1.000000e+000)
mad r4.w, r4.w, r1.x, cb12[7].x
div r1.x, r1.x, r4.w
dp3 r4.w, r4.xyzx, -cb12[1].xyzx
mad_sat r4.w, r4.w, cb12[5].w, cb12[5].z
mul r1.x, r1.x, r4.w
mov r2.w, l(1.000000)
dp4 r2.x, r2.xyzw, cb12[6].xyzw
ge r2.x, r2.x, l(0.000000e+000)
and r2.x, r2.x, l(0x3f800000)
mul r1.x, r1.x, r2.x
lt r2.x, r1.x, l(1.000000e-006)
discard_nz r2.x
ldms r2.x, r0.xyww, t11.yxzw, v3.x
and r2.x, r2.x, l(8)
utof r2.x, r2.x
ge r2.x, r2.x, l(7.900000e+000)
ldms r2.yzw, r0.xyww, t7.wxyz, v3.x
mul r2.yzw, r2.yyzw, r2.yyzw
ldms r5.xyz, r0.xyww, t9.xyzw, v3.x
mul r5.xy, r5.xyxx, r5.xyxx
ldms r0.xyzw, r0.xyzw, t8.xyzw, v3.x
mul r6.xyz, r0.wwww, l(9.980469e-001, 7.984375e+000, 6.387500e+001, 0.000000e+000)
frc r6.xyz, r6.xyzx
mad r6.xy, -r6.yzyy, l(1.250000e-001, 1.250000e-001, 0.000000e+000, 0.000000e+000), r6.xyxx
mad r0.xyz, r0.xyzx, l(2.560000e+002, 2.560000e+002, 2.560000e+002, 0.000000e+000), r6.xyzx
add r0.xyz, r0.xyzx, l(-1.280000e+002, -1.280000e+002, -1.280000e+002, 0.000000e+000)
dp3 r0.w, r0.xyzx, r0.xyzx
rsq r0.w, r0.w
mul r0.xyz, r0.wwww, r0.xyzx
min r0.w, r5.x, l(1.000000e+000)
mad r4.w, r5.y, l(5.120000e+002), l(-5.000000e+002)
max r4.w, r4.w, l(0.000000e+000)
mad r5.x, r5.y, l(5.120000e+002), -r4.w
mul r4.w, r4.w, l(5.580000e+002)
mad r4.w, r5.x, l(3.000000e+000), r4.w
dp3 r5.x, r1.yzwy, r1.yzwy
rsq r5.x, r5.x
mul r1.yzw, r1.yyzw, r5.xxxx
mad r3.xyz, r3.xyzx, r3.wwww, -r1.yzwy
dp3 r3.w, r3.xyzx, r3.xyzx
rsq r3.w, r3.w
mul r3.xyz, r3.wwww, r3.xyzx
movc r2.x, r2.x, l(0), l(1.000000)
mul r1.x, r1.x, r2.x
mul r5.xyw, -cb12[1].zxzy, cb12[2].yzyx
mad r5.xyw, -cb12[1].yzyx, cb12[2].zxzy, -r5.xyxw
dp3 r5.x, r5.xywx, -r4.xyzx
dp3 r5.y, cb12[2].xyzx, -r4.xyzx
dp3 r2.x, -cb12[1].xyzx, -r4.xyzx
mad r3.w, -cb12[5].x, cb12[5].x, l(1.000000e+000)
sqrt r3.w, r3.w
div r3.w, cb12[5].x, r3.w
mul r3.w, r3.w, l(5.000000e-001)
div r2.x, r3.w, r2.x
mad_sat r6.xy, r5.xyxx, r2.xxxx, l(5.000000e-001, 5.000000e-001, 0.000000e+000, 0.000000e+000)
eq r2.x, cb12[11].x, l(1.000000e+000)
add r3.w, -r6.y, l(1.000000e+000)
movc r6.z, r2.x, r3.w, r6.y
sample_l r5.xyw, r6.xzxx, t2.xywz, s2, l(0.000000e+000)
mad r5.xyw, r5.xyxw, r5.xyxw, l(-1.000000e+000, -1.000000e+000, 0.000000e+000, -1.000000e+000)
mad r5.xyw, cb12[11].yyyy, r5.xyxw, l(1.000000e+000, 1.000000e+000, 0.000000e+000, 1.000000e+000)
mul r5.xyw, r5.xyxw, cb12[3].xyxz
mul r5.xyw, r5.xyxw, cb12[3].wwww
dp3_sat r2.x, r0.xyzx, r4.xyzx
dp3_sat r6.x, -r1.yzwy, r0.xyzx
dp3_sat r6.y, r3.xyzx, r4.xyzx
add r1.yz, -r6.xxyx, l(0.000000e+000, 1.000000e+000, 1.000000e+000, 0.000000e+000)
mul r4.xy, r1.yzyy, r1.yzyy
mul r4.xy, r4.xyxx, r4.xyxx
mul r1.yz, r1.yyzy, r4.xxyx
add r1.w, -r5.z, l(1.000000e+000)
mad r1.yz, r5.zzzz, r1.yyzy, r1.wwww
add r4.xy, r4.wwww, l(2.000000e+000, 1.000000e-008, 0.000000e+000, 0.000000e+000)
mul r1.w, r4.x, l(1.250000e-001)
mad r1.y, -r0.w, r1.y, l(1.000000e+000)
dp3 r0.x, r0.xyzx, r3.xyzx
add_sat r0.x, r0.x, l(1.000000e-008)
log r0.x, r0.x
mul r0.x, r0.x, r4.y
exp r0.x, r0.x
mul r0.x, r1.z, r0.x
mul r0.x, r1.w, r0.x
mul r0.x, r0.w, r0.x
mul r0.x, r2.x, r0.x
mul r0.y, r1.y, r2.x
mul r0.x, r0.x, cb12[8].z
mad r0.xyz, r2.yzwy, r0.yyyy, r0.xxxx
mul r0.xyz, r5.xywx, r0.xyzx
mul r0.xyz, r1.xxxx, r0.xyzx
mul o0.xyz, r0.xyzx, cb2[14].zzzz
mov o0.w, l(1.000000)
ret